#include<iostream>
#include"share.h"
#include<unistd.h>
#include <sys/shm.h>
#include<sys/types.h>
#include<sys/ipc.h>

using namespace std;

int main()
{
    int shmid=shmget(shm_key,ShmSize,IPC_CREAT|IPC_EXCL|shm_mode);//创建并获取共享内存
    if(shmid==-1)
    {
        cout<<"创建共享内存失败"<<endl;
        return 2;
    }

    int* shmaddr=(int*)shmat(shmid,nullptr,0);//挂载共享内存
    //进程间通信
    int i=1;
    while(true)
    {
        *shmaddr=i;
        i++;
        sleep(1);
    }

    shmdt(shmaddr);//去除共享内存
    shmctl(shmid,IPC_RMID,nullptr);//释放共享内存
    return 0;
}